Medical accessory proximity testing, detection, and alerting system

ABSTRACT

Disclosed is a system having an implanted component and external component which are configured to provide a test of wireless communication in order to assess the success or failure of such communication and to store attributes related to such test in a memory log. To provide the communication test the implantable and external components can attempt wireless communication according to communication test parameters which relate to number of times to retry communication, duration of sending communication test signals, durations of waiting for communication test signals and the schedule of the communication tests. The schedule of tests may be period or may change over time in order to become more or less frequency according to a programmable schedule that may also decrease if the communication tests are successful and indicate patient compliance in keeping the external components close by. The communication tests can assist in determining if the patient is maintaining external components within a suggested proximity (e.g. 6 feet) of the patient and may assist to determine if transmission or reception difficulties are the source of communication failure. A physician programmer can provide for programming, conducting, summarizing and assessing the results of communication tests.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a divisional of pending U.S. application Ser. No.12/817,506, filed 17 Jun. 2010 entitled “MEDICAL ACCESSORY PROXIMITYTESTING, DETECTION, AND ALERTING SYSTEM”.

FIELD OF USE

This invention is in the field of medical device systems that monitor apatient's health, and in particular, implantable medical devices thatcommunicate with an external device.

BACKGROUND OF THE INVENTION

New devices that monitor and treat disorders such as cardiac or neuraldisorders rely upon patient interaction. Patient interaction may occurwhen a patient decides to adjust the operation of the implanted device,such as to turn the device on or off or to make an adjustment to itsparameters. Patient interaction may also occur when the implanted deviceis set to relay data or an alert signal to an external device which canoccur when an abnormal cardiac or neural event is detected. The patientcan then interact by pressing a button on the external device toacknowledge that the alert signal has been received and that appropriateaction (calling 911) will be initiated.

Communication between internal (implanted medical device or “IMD”) andexternal (external device or “EXD”) components of a medical systemusually communicate in two modes. In a first mode, near-fieldcommunication is used. This is a relatively low power mode in which theexternal and internal device are placed very close to each other (e.g.within 2-3 inches). In the case of a cardiac device, the EXD must beplaced directly over the chest where the IMD resides so that informationcan be transmitted and received without using much power. In a secondmanner of communicating, a far-field mode is used. Far fieldcommunication can use an antenna of the IMD and can transmit signalsover a limited distance, such as 6 feet.

In order for the IMD and EXD to communicate the external components mustbe within a specified range (e.g. 6 feet) so that the transmissions fromthe internal components can be obtained by the external components, andvice-versa. Failure of the patient to keep the EXD within this range canprevent the IMD and EXD from communicating successfully. This can beknown as an “out of range (OOR) error.” Various types of OOR errors canoccur in response to a number of different OOR events. These OOR eventsmay include, for example: the IMD not finding the external device, theimplantable device only finding an external device that is not theprimary EXD with which it is intended to communicate, or the EXD notfinding an IMD. Another type of OOR event occurs if an IMD or EXD isable to reach the sister device, but the signal is very weak, indicatingthat the devices may be “almost” out of range. Yet another type of OORevent occurs if one of the devices is able to reach the other device,but the communication interruptions exceed a specified criterion,indicating that the devices may possibly be “almost” out of range orthat electromagnetic interference may be present.

There is a need for a system that can mitigate the problems associatedwith OOR events.

SUMMARY OF THE INVENTION

An embodiment of the invention comprises an implantable medical deviceand an external device that communicate with one other. The implantedmedical devices comprises a transceiver, a random access memory, and aprocessor coupled to the transceiver and the random access memory. Theprocessor is configured to wirelessly transmit a plurality of proximitytest signals as part of a proximity test. For each of the plurality ofproximity test signals, the processor determines determine whether aresponse has been received from the external device within a certaintime after sending the corresponding proximity signal. If the internaldevice does not receive acknowledgement within a certain period, theinternal device will enter the time and other pertinent information in aproximity test log. The external device also maintains a proximity testlog. If proximity test failures are consistently occurring, the internaldevice sends a notification signal that can enable the patient in whomthe device is implanted to take remedial action.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a system for the detection of a cardiac event and forwarning the patient that a medically relevant cardiac event isoccurring.

FIG. 2 is a block diagram of an IMD.

FIG. 3 is a block diagram of an EXD that communicates with the internaldevice shown in FIG. 2.

FIG. 4 is a flow chart of a proximity check communication method,implemented by the IMD, according to the present invention.

FIG. 5 is a flow chart of a proximity check communication method,implemented by the EXD, according to the present invention.

FIG. 6 is a diagram of a proximity log maintained by the IMD and EXD.

FIG. 7 is a diagram of the format of packets exchanged between the IMDand EXD.

FIG. 8 is a flow chart of a method for adjusting the schedule ofproximity testing.

FIG. 9 is a display of a Proximity Test Results screen.

FIG. 10 is a flow chart of a method for performing a diagnosticproximity test by a medical technician.

DETAILED DESCRIPTION OF THE INVENTION

In the Specification and Claims herein, “proximity failure” broadlymeans a condition in which an implanted medical device and an externaldevice are unable to communicate with one another, regardless of thecause of the communication failure. Communication failures may be causedby factors such as the external device being too far away from theimplanted device or electromagnetic interference.

Architecture

FIG. 1 illustrates one embodiment of a system 10 comprising an implantedcardiac event detection device 5 and external equipment 7. The batterypowered IMD 5 contains electronic circuitry that can detect a cardiacevent such as an acute myocardial infarction or arrhythmia and warn thepatient when the event, or a clinically relevant precursor, occurs. TheIMD 5 can store the patient's electrocardiogram for later readout aswell as send and receive wireless signals to, 53, and from, 54, theexternal equipment 7. The functioning of the IMD 5 will be explained ingreater detail with the assistance of FIG. 2.

The IMD 5 receives electrical signals from intracardiac, subcutaneous orbody surface leads 12 and 15, which, in the embodiment illustrated here,will be a clavicle and right side lead, respectively. Clavicle lead 12comprises electrodes 13 and 14 with polarity hereafter defined as thedifference potential measured between electrode 13 and electrode 14.Right side lead 15 comprises electrodes 13 and 6 with polarity hereafterdefined as the potential at electrode 13 minus the potential atelectrode 6. The electrode 13 is preferably disposed as close aspossible to the sternum, in the fourth intercostal space on the rightside of the body. The IMD 5 is housed in a metal case 11 that can serveas another electrode.

Many other embodiments of the present invention are possible. In onealternative embodiment, a lead is implanted within the heart, and thedetection method of the present invention may be applied to signalsreceived through that lead. In another alternative embodiment,subcutaneous electrodes in the following areas are used to form threeseparate leads: (1) the left precordial area (corresponding to lead V2of the conventional 12 lead ECG); (2) the upper left pectoral region;and (3) the lowest portion on the left ribcage on the midaxillary line.

Also, as will be described more fully below, the present invention maybe used in conjunction with an implantable cardioverter/defibrillator, apacemaker or biventricular pacemaker (cardiac resynchronization therapydevices), or different types of implantable monitors (such as animplantable ventricular chamber pressure sensor or temperature sensor,neurostimulator, vagal stimulator, or insulin pump). In this case, anintracardiac lead 21, for example placed in the RV apex with the IMDhousing 11 serving as the reference potential, may provide electricalsignals for analysis. Extracardiac leads could also be employed.

According to one embodiment of the present invention, if the IMD 5 isused in conjunction with any of the above mentioned therapeutic devices,alarm data (associated with the present invention's detection scheme) issent from the IMD 5 through a service such as St. Jude Merlin.net orMedtronic Carelink. The service, rather than the IMD 5, in turn notifiesthe patient that he/she needs to seek treatment. According to thispossible implementation, the IMD 5 does not require an internal alarm,thereby potentially decreasing its size. For example, the size of abattery and motor necessary to provide a vibration alarm may be muchlarger than that needed to provide a sonic alarm, and this may cause themedical device to be relatively large.

FIG. 1 also shows the external equipment 7 that consists of aphysician's programmer 68 having an antenna 70, and an external alarmsystem (or EXD) 60 including a charger 62. The external equipment 7provides means to interact with the IMD 5. These interactions include,but are not limited to, programming the IMD 5, retrieving data collectedby the IMD 5 and handling alarms generated by the IMD 5.

In FIG. 1, the external alarm system 60 has a patient operated initiator55, an alarm disable button 59, a panic button 52, an alarm transceiver56, an alarm speaker 57 and an antenna 161. It can also communicate withemergency medical services 67 via the modem 165 over the communicationlink 65. If a cardiac event is detected by the IMD 5, an alarm messageis sent by a wireless signal 53 to the alarm transceiver 56 whichreceives this signal via the antenna 161. When the alarm signal isreceived by the alarm transceiver 56 a signal 58 is sent to theloudspeaker 57. The signal 58 will cause the loudspeaker to emit anexternal alarm signal 51 to warn the patient that an event has occurred.Examples of external alarm signals 51 include a periodic buzzing, asequence of tones and/or a speech message that instructs the patient asto what actions should be taken. Furthermore, the alarm transceiver 56can, depending upon the nature of the signal 53, send an outgoing signalover the link 65 to contact emergency medical services 67. The EXD 60may also have a display screen for displaying messages related to systemoperation and inter-device communication (e.g. communication between theEXD and a remote medical station) or messages related to alarm testing(e.g., “2 alarm proximity tests have failed-press green button tocontinue”, “See your doctor”, “Go to ER”) and may also contain coloredLED's which indicate the occurrence of different types of events. Whenthe detection of an acute myocardial infarction is the cause of thealarm, the alarm transceiver 56 could automatically notify emergencymedical services 67 that a heart attack has occurred and an ambulancecould be sent to treat the patient and to bring him to a hospitalemergency room.

If the remote communication with emergency medical services 67 isenabled and a cardiac event alarm is sent within the signal from the IMD53, the modem 61 will establish the data communications link 65 overwhich a message will be transmitted to the emergency medical services67. The message sent over the link 65 may include any or all of thefollowing information: (1) a specific patient is having an acutemyocardial infarction or other medically relevant event, (2) thepatient's name, address and a brief medical history, (3) a map and/ordirections to where the patient is located, (4) the patient's storedelectrogram including baseline electrogram data and the specificelectrogram segment that generated the alarm (5) continuous real timeelectrogram data, and (6) a prescription written by the patient'spersonal physician as to the type and amount of drug to be administeredto the patient in the event of a heart attack. If an emergency roomvisit at a hospital is required, information can be transmitted to thehospital (when this is part of the emergency medical services 67) thatthe patient has had a cardiac event and should be in transit to theemergency room. In this manner the medical practitioners at theemergency room could be prepared for the patient's arrival. Theinformation sent over the link 65 may also be sent to the patient'sprimary doctor directly or via forwarding by the emergency medicalservices 67. Information can also be sent over the link 65 if there area selected number of proximity test failures, although this is not anemergency situation, since it is a problem needing intervention. Forexample, if the patient is repeatedly failing their proximity tests thena medical technician can call the patient to determine why this isoccurring. Proximity test results can be sent at the end of every day orevery week or when the EXD 60 receives a request from the remotestation, rather than after every proximity test is done. Further, theEXD 60 can be programmably configured to perform actions such asalerting the patient or sending proximity tests results to a remotestation based upon test results, such as procuring a specified number offailures or if an excess have occurred within an certain amount of time.

The communications link 65 can be either a wired or wireless telephoneconnection that allows the alarm transceiver 56 to call out to emergencymedical services 67. The typical external alarm system 60 might be builtinto a Pocket PC or Palm Pilot PDA where the alarm transceiver 56 andmodem 61 are built into cards having a standardized interface such ascompact flash cards, PCMCIA cards, multimedia, memory stick or securedigital (SD) cards. The modem 61 can be a wireless modem such as theSierra AirCard 300 or the modem 61 may be a wired modem that connects toa standard telephone line. The modem 61 can also be integrated into thealarm transceiver 56.

The purpose of the patient operated initiator 55 is to give the patientthe capability to initiate transmission of the most recently capturedelectrogram segment from the IMD 5 to the external alarm system 60. Thiswill enable the electrogram segment to be displayed for a medicalpractitioner. The patient operated initiator button can be used inconjunction with a menu LCD display which will allow the patient tonavigate through various menus relating to different device operations.

Once an internal and/or external alarm signal has been initiated,depressing the alarm disable button 59 will ACKnowledge the patient'sawareness of the alarm and turn off the internal alarm signal generatedwithin the IMD 5 and/or the external alarm signal 51 played through thespeaker 57. If the alarm disable button 59 is not used by the patient toindicate acknowledgement and awareness of a SEE DOCTOR alert, anEMERGENCY alarm, or a proximity test requiring a response, it isenvisioned that the internal and/or external alarm signals would stopafter a time period (an initial alarm-on period) that would beadjustable through the programmer 68.

For EMERGENCY alarms, to help prevent a patient from ignoring orsleeping through the alarm signals generated during the initial alarm-onperiod, a reminder alarm signal might be turned on periodically during afollow-on periodic reminder time period. This periodic reminder time istypically much longer than the initial alarm-on period. The periodicreminder time period would usually be 3 to 5 hours because after 3 to 5hours the patient's advantage from being alerted to seek medicalattention for a severe cardiac event, like an AMI, is mostly lost. It isalso envisioned that the periodic reminder time period could also beprogrammable through the programmer 68 to be as short as 5 minutes oreven continue indefinitely until the patient acknowledges the alarmsignal with the button 59 or the programmer 68 is used to interact withthe IMD 5.

The IMD 5, the physicians programmer 68, the EXD 60, and emergencymedical services 67 each have proximity testing module (PTM) whichcollaborate with the programmable parameter modules 477, 66, 130, 132,respectively. The PTM/Prog Parameter modules 477, 66, 130, 132 enablevarious components of the system to interact during proximity testingoperations. The system may also contain a PTM accessory 134 which may berealized as a watch, pendant, or other wearable device. The EXD 60 maybe programmed to perform some, or all, of its proximity checks bycommunicating with the PTM accessory 134 rather than with the IMD 5.Using the PTM accessory 134 rather than the IMD 5 during at least aportion of the proximity tests decreases usage of the IMD 5 battery 22.Additionally, in order to increase compliance of keeping the EXD 60 nearthe IMD 5, the EXD 60 may be realized as a wearable device such as awatch or pendant rather than a pager. In one preferred embodiment themedical monitoring and alerting system contains both an implanted device5 and an external device 60 and at least the IMD 5 is configured with aproximity test module 477.

FIG. 2 is a block diagram of the IMD 5 with primary battery 22 and asecondary battery 24. The secondary battery 24 is typically arechargeable battery of smaller capacity but higher current or voltageoutput than the primary battery 22 and is used by short duration, highoutput components of the IMD 5 like the RF chipset in the telemetrysub-system 46 or the vibrator 25 attached to the alarm sub-system 48.According to a dual battery configuration, the primary battery 22 willcharge the secondary battery 24 through the charging circuit 23. Theprimary battery 22 is typically a larger capacity battery than thesecondary battery 24. The primary battery also typically has a lowerself discharge rate as a percentage of its capacity than the secondarybattery 24. It is also envisioned that the secondary battery could becharged from an external induction coil by the patient or by the doctorduring a periodic check-up.

The pairs of wires corresponding to leads 12 and 15 respectively connectto the amplifier 36, which is a multi-channel or differential amplifier.The amplified electrocardiogram signals 37 from the amplifier 36 arethen converted to digital signals 38 by the analog-to-digital converter41, which preferably samples at a rate of at least 200 Hz. The digitalelectrocardiogram signals 38 are buffered in the First-In-First-Out(FIFO) memory 42. Processor means shown in FIG. 2 as the centralprocessing unit (CPU) 44 coupled to memory means shown in FIG. 2 as theRandom Access Memory (RAM) 47 can perform instructions stored in theprogram memory 45 that implement the flowchart shown in FIG.

4.

A level detector 43 is coupled to the analog to digital converter 41.The level detector 43 detects whether a patient's torso is upright orsupine and also, if the torso is supine, the extent of its rotation withrespect to the earth (e.g. patient is lying flat on his/her back, lyingon his/her right side or left side.) There are many types of MEMS basedlevel detectors which can also serve as inclinometers, accelerometers,and general detectors for motion and force.

Additional sensors may communicate with the IMD 5 wirelessly through thetelemetry sub-system 46. The data from these leads may correspond todigitized electrocardiogram signals (that have been processed by aremote subcutaneous device).

The operation of most of the components in FIG. 2 is further describedin U.S. patent application publication number 2004/0215092.

In a preferred embodiment of the present invention the RAM 47 includesspecific memory locations to store sets of electrocardiogram segments.These memory locations are the recent electrocardiogram storage 472 thatwould store the last 2 to 10 minutes of recently recordedelectrocardiogram segments so that the electrocardiogram data occurringjust before the onset of a cardiac event can be reviewed at a later timeby the patient's physician using the physician's programmer 68 ofFIG. 1. For example, the recent electrocardiogram storage 472 mightcontain eight 10-second long electrocardiogram segments that werecaptured every 30 seconds over the last 4 minutes.

A summary statistics memory 474 would provide storage for summaryinformation, such as running averages, of various cardiac waveformfeature values. A message log memory 476 stores proximity loginformation as will be described with reference to blocks 112 and 114 ofFIG. 4. Memory 473 stores patient specific information (e.g. patientname, date of birth). Memory 477 stores programming parameters andproximity test modules that control various operations associated withthe proximity tests and storage of proximity test results in theproximity log 476 of the present invention.

The telemetry sub-system 46 with antenna 35 provides the IMD 5 the meansfor two-way wireless communication to and from the external equipment 7of FIG. 1. Existing radiofrequency transceiver chip sets such as the Ashtransceiver hybrids produced by RF Microdevices, Inc. can readilyprovide such two-way wireless communication over a range of up to 10meters from the patient. It is also envisioned that short rangetelemetry such as that typically used in pacemakers and defibrillatorscould also be applied to the IMD 5. It is also envisioned that standardwireless protocols such as Bluetooth and 802.11a or 802.11b might beused to allow communication with a wider group of peripheral devices.

FIG. 3 is a block diagram of the EXD 60. Memory 66 stores proximity testmodule (PTM) operations which are defined to perform proximity tests andprogramming parameters that control various operations associated withthe proximity log features of the present invention. A centralprocessing unit (CPU) 71 is coupled to the alarm transceiver 56 whichreceives signals from the antenna 161, as was described with referenceto FIG. 1. The CPU 71 is also coupled to a random access memory 73,which is subdivided into a message log memory 64 and a PMT/programmingparameters memory 66. The CPU 71 is also coupled to the lights (and/orLCD display/colored LEDS) 58 and the loudspeaker 57. The CPU 71implements the flowchart shown in FIG. 5 according to instructionsstored in a program memory 72, which may be loaded in from the PTM/progparameters memory 66. The CPU 71 interacts with the patients via patientoperated buttons (52, 55, 59) which can be used to interact with the EXD60, and indirectly with the IMD 5, during proximity tests. The CPU 71may contain timing/clock circuitry which provides timing informationneeded for carrying out its operation.

FIG. 4 is a flow chart of a proximity test method, implemented by theIMD 5, according to the present invention. In block 100, a retry counteris set to N. As will be further described below, the retry countergoverns the number of attempts to contact the EXD 60 before declaring aproximity failure. In block 102, the IMD 5 “wakes up” the wirelesscommunication circuitry (telemetry subsystem 46 in FIG. 2). In block104, the telemetry subsystem 46 sends a proximity check signal to theEXD 60.

In block 108, the IMD 5 determines whether it has received anacknowledgement (ACK) from the EXD 60 within a predetermined amount oftime, T seconds, where a preferred value of T is 600 ms. Reception of anACK within this time is a positive proximity test result whereas lack ofsuch reception is a negative proximity test result. If block 108 returnsa positive result, control transfers to block 112, where the receipt ofthe ACK is written in a message log, whose format will be furtherdescribed with reference to FIG. 6. In block 112, the IMD 5 can maintainits own message log in the message log memory 476 (see FIG. 2). Fromblock 112, control transfers to block 120 (after turning off radio instep 116), which waits N hours before reinitiating the proximity checkcycle, where preferred values of N are 6, 24, and 72. As will bedescribed, when the patient first is implanted it may be important tocheck 4 times a day for 3-4 days to ensure the patient is keeping theEXD 60 nearby, which can decrease to once every day or 3 daysthereafter. Alternatively, rather than being accomplished by the IMD,this can be mostly carried out using the PTM accessory 134, which canrely on its own circuitry and a method which may be implemented as justdescribed. In some testing situations it doesn't matter whether the IMD5 or the PTM accessory 134 conducts the test, such as when the goal isto make sure that the patient is keeping the EXD 60 nearby.

Returning to block 108, if an ACK has not been received from the EXD 60within T sec., the control transfers to block 110, which decrements theretry counter. Control transfers to block 106, which applies a test todetermine whether a proximity failure condition exists. In the preferredembodiment, the test is whether the retry counter is equal to 0, whichwould mean that N attempts to contact the EXD 60 have all resulted infailure. If that is the case, block 106 transfers control to block 114,which logs the non-receipt event in the message log 200 in FIG. 6. Instep 115, the IMD 5 evaluates the history of events in the message logaccording to proximity test rules set up in the PTM/Prog parametersmodule 477 and determines if proximity failure-condition operations needto occur (e.g., if proximity tests have failed for the last week thenalert the patient) as well as calculating the next value of M dependingupon the PTM parameters. If the proximity tests have failed for morethan a specified period the IMD 5 may provide an internal alert since itmay be unable to communicate with the EXD 60. However, in a preferredembodiment, if the EXD 60 doesn't receive the cue to perform a proximitytest during a specified period (e.g. 1 week) then it will alert thepatient. It is preferable to have the EXD rather than IMD alert thepatient in order to decrease usage of the IMD 5 battery 22. Control thentransfers to block 122 (after turning off radio in step 116), whichimplements a M-hour delay before repeating the entire procedure startingat block 100.

Returning to block 106, if the retry counter is greater than 0, thenblock 106 transfers control to block 102, and another attempt is made tocontact the EXD 60.

FIG. 5 is a flow chart of a proximity check test method, implemented bythe EXD 60, according to the present invention. In block 150, a NAKcounter is set to 0. As will be further described below, the NAK countergoverns the number of attempts to receive a test message from the IMD 5before detecting a proximity failure. In block 152, every P seconds theEXD 60 “wakes up” its radio (alarm transceiver 56 in FIG. 3) for Useconds. Preferred values for P and U are 90 and 3. With respect toproximity testing, in one embodiment, P can be set to provide a delay of72 hours and U set at 60. In this instance the IMD 5 is also programmedto perform a proximity test every 3 days and it wakes up its transceiver56 for some duration (e.g., a minute) in order to participate in thetest with the EXD 60. In this case, in order to compensate for clockdrift, the IMD 5 sends clock information along with its communicationduring the proximity test and the EXD 60 uses this information to adjustthe next time at which it will perform the proximity test.

Block 154 determines whether the EXD 60 has received a proximity testsignal from the IMD 5 within a predetermined amount of time, U seconds,where a preferred value of U is 3. If block 154 returns a positiveresult, control transfers to block 168, where the EXD 60 sends an ACK tothe IMD 5. Control then transfers to block 170, which causes the EXD 60to log the ACK send event into its message log, whose format will befurther described with reference to FIG. 6. The EXD 60 maintains its ownmessage log in the event log memory 64 (FIG. 3). From block 170, controltransfers back to block 152 to restart the cycle.

Returning to block 154, if a proximity signal has not been received fromthe IMD 5 within U sec., the control transfers to block 156, whichincrements the NAK counter. Control transfers to block 158, which logsthe non-receipt event in the message log of the EXD 60.

Control then transfers to block 160, which applies a criterion test asdefined by the proximity test module/prog parameters 66 to determinewhether a proximity failure condition exists. In the preferredembodiment, this test is whether the NAK ctr is above a threshold (TH).TH is a programmable value that may be adjusted, for example, inrelation to M and N values (or ranges of M and N values) as defined insteps 120 and 122. If the NAK ctr is above TH, in block 162, the EXD 60notifies the patient of the proximity failure by sending an audiblesignal through the loudspeaker 57 (FIG. 3) and/or activatinglights/visual display 58 (FIG. 3). The EXD 60 is preferably programmableso that it may be further configured to also send this alert to acentral station/medical practitioner. Alternatively, the alert is onlysent to a remote location after the patient has been notified a selectednumber of times. Additionally, the NAK counter may be decremented by avalue of 1 every R-hours in step 156, so that a patient alert is onlygenerated if there are a specified number of communication errors withina specified period. Further, in an alternate embodiment, the patient canenter a condition (e.g. on an airplane) into the message log memory 64of the EXD 60 in order to indicate the possible cause of the failure, sothat patient alerting or proximity testing does not occur for a selectedperiod.

In block 164, the alert notification event is entered into the messagelog of EXD 60. In block 166, the NAK counter is reset to 0, and thecycle is restarted in block 152.

According to an alternate embodiment, rather than the patient beingnotified according to block 162 that the NAK counter has passed athreshold value TH within step 160 (meaning too many proximity testsignals from the IMD 5 have not been detected) the patient is alertedonly when the EXD 60 reviews its message log and determines that thehistory of NAKs meets a criterion selected by the proximity test moduleof EXD 60. In other words, step 164 occurs directly after step 160, andthen the message log is evaluated to determine whether patientnotification is proper. If so, then step 162 is performed. Further, theproximity signal sent by the IMD 5 can also contain the time at which itreceived the last ACK from the EXD 60 so that the EXD 60 can determineif the IMD 5 received the ACK sent the last time step 168 occurred. Inthis manner the EXD 60 can keep track not only of its failures toreceive signals sent from the IMD 5 but also failures of the IMD 5 toreceive signals sent from the EXD 60.

FIG. 6 is a diagram of a proximity log 200 maintained by the IMD 5 andEXD 60 in their proximity log memories 476 and 64, respectively. In thisembodiment, the proximity log 200 is a table with multiple columns andone row for each logged event. The columns are a timestamp field 202, anevent description field 204 and a data field. The timestamp field 202 isthe date and time of an event or may be represented as ticks of acounter.

The event description field 204 is a two bit field that encodes thedescription of an event according to a coding scheme shown in table 208.Primary events are “no message received” and “message received.” In apreferred proximity test embodiment, in the case of the IMD 5, a“message received” is an ACK from the EXD 60 (block 112 of FIG. 4). Inthe case of the EXD 60, a “message received” is the reception of a testmessage from the IMD 5 (block 170 of FIG. 5). The EXD 60 also logsproximity failure events (block 164 of FIG. 5) in the event descriptionfield.

The data field 206 is a 256 byte field that may include a variety ofinformation), including the number of failed communication attempts inthe case that no message is received by the IMD 5 or EXD 60 from theother device (e.g., as computed by “retry ctr” and “NAK-ctr” in the step156 or 110 of FIGS. 4 and 5). The data field may also contain valuesrelated to the strength of the signal which was received, a proximitytest paradigm identification number which can indicate the protocol thatwas used for the proximity test, and associated values which are set forthe protocol.

FIG. 7 is a diagram of the format of packets (e.g. data packets)exchanged between the IMD 5 and EXD 60. In this example, a packet 300comprises a preamble field 302, an “Access 1” field 304, and an “Access2” field 306, a USK field 308, an optional address field 312, a datafield 314, and two cyclical redundancy fields 316 and 318.

The preamble field 302 preferably comprises 6 bytes with a constantvalue of 0xAA. The “Access 1” field 304 is preferably one byte thatprovides a customer/access code to the host device (e.g. IMD 5 or EXD60). Part of field 304 is a two bit sub-field 305 that stores ACK/NAKresponse information from the EXD 60 (see block 168 of FIG. 5 for theACK response).

The “Access 2” field 306 is preferably a single byte that providesdevice specific access. A subfield 320 is a single bit that indicatesthe direction of the communication packet (e.g. a 0 indicates IMD 5 toEXD 60 transmission while a 1 indicates the reverse.

A USK field 308 is pseudo randomly generated by the EXD 60 for eachcommunication session established. This value is then used as part ofthe communication access protocol for that specific session.

An optional address field 312 is utilized to provide additionaladdressing capability for memory access at the individual byte level. Adata field 314 contains information such as number of retries prior toproximity test failure or success. Two cyclical redundancy fields 316and 318 enable cyclical redundancy checks as is well known in the art.

FIG. 8 shows how proximity tests can occur according to a schedule andthis schedule can change over time. The physician's programmer 64 can beused to program the system components (e.g., IMD 5, and EXD 60) in orderto run the proximity tests according to a schedule. “Initial Schedule 1”for proximity tests is loaded into proximity tests modules (PTM) 66 and477 in step 250. For example, the schedule can decrease over time wherethe proximity tests can occur at least 4 times per day at the start ofthe selected period and this can decrease to once a day or less over aselected interval. In this manner, the tests can be run more frequentlyfor a new patient who is not accustomed to carrying around the EXD 60,and subsequently decrease over time, according to a schedule that can becontingent upon the patient successfully keeping the EXD 60 within rangeso that the proximity tests pass. In other words, a decrease inproximity testing may be contingently set so that the decrease onlyoccurs if the proximity testing results indicate that the patient iskeeping the EXD 60 within range. Conversely, an increased number ofproximity tests may be scheduled in the case where proximity tests fail.In a first example of a schedule changing over time, at least one device(which may be the IMD5, EXD 60, or both) causes its CPU to operate thePTM 66/477 in order to determine, in step 252, if a scheduled proximitytest operation matches a current clock time, and if so step 254 occurs,while if not then step 252 is repeated (or is repeated after a delay).In step 254, the current clock time is checked to determine whether aproximity test is scheduled. If not, then control passes to step 266where the PTM 66/477 is checked to see if a schedule change in PTM66/477 testing is warranted (e.g. decreasing frequency of testing from4× per day to 2× per day). If so, control passes to step 268, where theschedule for proximity testing is adjusted and the next time for aproximity test operation is set for the proximity test parameters in thePT modules 66/477. The proximity test log memory 64,476 is updated instep 270, and control passes back to step 252. Step 252 compares thecurrent clock time to times of the newly scheduled operations. In thiscase, in order for a step such as 254 or 256 to occur, the clock timewill need to match the times of the newly scheduled operations (whichwere updated in step 268) and which are stored in the proximity testmodules 66, 477. Further, in step 266, if the current clock time doesmatch a time defined for a schedule change to occur then control simplypasses from step 266 to 270, prior to returning control to step 252.

In a second example, the proximity test results are used to adjust theschedule of proximity testing (either alone or in combination with apre-defined schedule that changes over time) as is shown in steps256-266 of FIG. 8. In step 256 at least one device (e.g., the IMD 5) ofthe system initiates the proximity test by sending out a plurality ofproximity test signals and attempting to receive an ACK signal from theother device (e.g., the EXD 60). Step 256, in which proximity testsignals and ACKS are sent and sought, may use at least a portion of thesteps shown in FIGS. 4 and 5 to achieve an embodiment of the IMD 5 andEXD 60 proximity test. In step 256 part of the proximity test signalswhich are sent may include information about prior proximity testresults in order to keep the IMD 5 and the EXD 60 up to date withproximity test results. For example, the IMD 5 may include prior testresult information in the proximity test signal which it sends out tonotify the EXD 60 that during the last proximity test it never receivedthe ACK response it was expecting from the EXD 60 (i.e. it would sendthe time of a ACK-receive failure which would correspond to the lastproximity test). The proximity test results are then evaluated in step258 in order to determine if the proximity test passed or failed as wellas the characteristics of the test (e.g. how long occurred betweensending proximity tests signals and receiving an ACK response). Theproximity test result can be a simple pass/fail result or it may bequantitative and contain, for example, the strength of the signal whichwas received. A quantitative value, which can be related to the qualityof the communication signal (e.g., number of drops which occurred whensending a data string, summary statistics such as the variance of signalstrength during the communication), may also be defined.

Next, control passes to step 260 where at least one of the proximitytest logs 64, 476 are updated. In step 262, the proximity test logs arethen evaluated in relation to a proximity test criterion to determine ifpatient alerting is necessary. When the IMD 5 is configured to providean alert signal in response to proximity test failures, the form of thealert may be either a sonic alert signal or a vibration alert signal orboth. The EXD 60 can also be configured to provide an alert signal toindicate that a series of proximity test failures have occurred (e.g.50% of communications are failures). In order to conserve IMD 5 batterypower, this may be scheduled to occur prior to (e.g. 2 days) a time whenthe IMD 5 is scheduled to provide a proximity failure alert. In thismanner the patient may push a button on the EXD 60 to acknowledge thisfailure (and this can cancel the IMD 5 from providing its alert in thefuture). However, in the case where the EXD 60 isn't working correctlyand doesn't provide an alert (e.g., it has run out of battery power),then the IMD 5 provides alerting to the patient so that the problem canbe solved.

In step 262 the IMD 5 and EXD 60 can be configured to issue a See Doctoralarm if calculations, done upon the log of proximity test results,indicate a proximity test criterion has failed and this failure has beendefined as an event for which the patient is alerted.Alternatively/additionally, the EXD 60 can display a text messagerelating to the nature of the proximity test results. An example of aproximity test criterion could be that at least 80% of the tests over a1 month interval must result in proximity tests pass in order for analert not to be issued. Further, the EXD 60 can be configured to contacta central station if calculations indicate a second defined proximitytest criterion has failed (e.g. less than 50% pass rate) and thisfailure has been defined as a proximity test event for which suchcontacting occurs.

Control then passes to step 264 where the Schedule 1 of proximitytesting may be adjusted. For example, if the last W proximity tests havepassed or failed, then the frequency of proximity testing may decreaseor increase, respectively. Alternatively, step 264 may operate inconjunction with step 266. Together these two steps will use “and logic”so that if step 266 is evaluated as true, and there is a scheduledchange for proximity testing, then this change will only occur if step264 also sets a flag to true. This latter flag would typically serve toindicate that a selected number or proportion of past proximity testshave not resulted in a proximity test failure condition.

It should be noted that the EXD 60 can also be configured to emit aproximity test pass alert signal when the proximity test is successful.For example, each morning at 8 a.m. the EXD 60 can perform a proximitytest and can provide a green blinking light and a particular sound (orseries of tones which are positive) if the proximity test was successfuland a red blinking light and different sounds if the proximity test wasa failure. The communication pass/failure alert signal can be selectedto be at least one of auditory, vibratory, or visual. In this manner thepatient can also be rewarded for keeping the EXD 60 within range ratherthan only being notified when there is a failure to do so.

From the perspective of the IMD 5 it is not known if the EXD 60 receivedthe proximity test signals which were sent by the IMD 5, or if the EXD60 replied with an ACK test signal unless the ACK is received by the IMD5. If this does not occur then this may be due to the IMD 5 failing tosend the proximity test signals, EXD 60 failing to successfully receivethe proximity test signals, or may be due to the IMD 5 failing toreceive ACKnowledgement. This information may be combined in differentmanners to obtain a more complete picture of what occurred during aproximity test. As suggested, in one embodiment when communicationfailures are registered either by the EXD 60 or IMD 5 then during thenext successful proximity test, or other type of communication betweenthe IMD 5 and EXD 60, the information about proximity test failures issent between the devices so that at least one of the devices, preferablythe EXD 60, contains a full log of proximity test results. However, thisstrategy requires energy and memory resources of the IMD 5 and EXD 60,so other approaches may offer advantages. For example, the logs of theEXD 60 and IMD 5 can be uploaded into a physician programmer 68 duringpatients' visits to their doctors (or during a remote session in whichinformation is obtained in the patient's home and sent to a remotemedical facility or doctor's office).

The physician programmer 68 has a proximity test module 130 which isable to download and then combine information from the IMD 5 and EXD 60proximity test logs 64, 476. It is further configured to performanalysis on the log data to help a medical technician determine thenature of communication failures. For example, instead of the proximitytest simply being used to provide a pass or fail result (e.g.,suggesting that the patient is not keeping the EXD 60 sufficientlyclose), the type of failure can be determined, such as failures whichare often/always are due to the IMD 5 not receiving ACK-signals. In thiscase, if the EXD 60 is receiving communication successfully, then theproblem may be with the transmission circuitry of the EXD 60 orreceiving circuitry of the IMD 5.

As is shown in FIG. 9 the proximity test module 130 is designed to allowthe physician programmer 68 to display the proximity test resultsgraphically to a user. Screen component 280 shows an example ofcommunication events for the IMD 5 (top) and EXD 60 (bottom) in whichproximity test signals are sent (S), and acknowledged (ACK). Thecomponent 280 shows that the proximity test starts with the IMD 5sending a signal, a slight time later the EXD 60 receives the signalwith a strength of 5 to which it responds (ACK5), where strength of 5 isa very strong signal and 1 is a very weak signal. The IMD 5 receivesthis ACK with a strength of 2 a short time later (ACK2). The next timethe IMD 5 sends a proximity test signal, the EXD 60 does not receive itand so it does not send an ACK back. The IMD 5 waits a defined period oftime and then creates a fail response (ACKF) indicating the proximitytest failed. In the final proximity test operation which is shown, theIMD 5 sends a proximity test signal and the EXD 60 receives the signalwith a strength of 4 to which it responds (ACK4), and the IMD 5 thenreceives this ACK with a strength of 3 a short time later (ACK3). Theuser can click on any of the items displayed by screen component 280 andobtain the rest of the details about the event (e.g., time of event,number of retries prior to a signal being received). The users can alsoright-click on the image to open up a table with all the proximity testevents and their corresponding parameters. In this example, while theIMD 5 seems to obtain the ACK signals sent from the EXD 60, the EXD 60seems to receive signals sent from the IMD 5 with low strength or doesnot receive the signals successfully at all.

The programmer's proximity test module is further configured tocalculate, with these proximity test results, and provide a proximitytest result profile which is displayed as screen component 282. In thisexample, values A-H show summary statistics which are calculated uponthe proximity test results. For example, “A” shows the average time (inseconds) required for the EXD 60 to respond after the IMD 5 sends aproximity test signal.

The physician programmer can also provide customization for what occursduring proximity testing. The “change send duration” option 284 allowsthe duration for which proximity test signals are sent to be modified.The “change send strength” option 286 allows the strength with whichproximity test signals are sent to be modified, either by increasing thepower of transmission or a protocol which uses more than onetransmission frequency. Although this may use more power in the IMD 5,it may be needed in cases where communication errors are occurring. The“change # send” option 288 can be used to change the number of sentproximity test signal retries when no ACK is obtained (e.g. theretry-ctr proximity test parameter value of step 100 in FIG. 4). The“change ACK wait duration/#” option 290 can be used to change theduration that the device will wait to receive test signals and thenumber of retries which occur when no ACK is obtained (e.g. the Tproximity test parameter value of step 108 in FIG. 4, and TH value ofstep 160 of FIG. 5). The “change proximity test fail operations” option292 can be used to change the response when a number (G) of proximitytests fail such as whether the IMD 5 or EXD 60 or both issue an alertsignal due to this failure. The “change EXD 60/ACC” option 294 is usedto determine how and if the EXD 60 and proximity test accessory (134 ofFIG. 1) are used during the proximity tests. For example, the EXD 60 canbe programmed to perform proximity tests with the accessory 134 ratherthan the IMD 5 so that the IMD 5 doesn't un-necessarily use up itsinternal power source during initial training of a patient when multipleproximity tests can occur in the same day.

In cases where there are proximity test failures, additional testing maybe necessary during a doctor visit in order to assist with determiningthe source of the problem. The programmer is configured with a “runproximity test” option 296 which allows an operator to run a diagnosticprotocol. For example, the diagnostic test protocol may include a methodof FIG. 10 in which the step of operating the proximity test module ofthe programmer 230 includes selecting the “run proximity test” option296 (of FIG. 9) in order to initiate the step of running the diagnosticprotocol 232. Step 232 can include the initiation of a communicationsession between the programmer, the IMD 5 and the EXD 60. This step 232then passes control to steps 234-236, where a download of the proximitytest results from the IMD 5 and EXD 60 occurs. In step 238, the testresults from the IMD 5 (set #1) and the EXD 60 (set #2) are combined andthe test results profile is created 240 and displayed 242 as is shown inscreen component 282. In the example given, the diagnostic protocol isselected, which causes the programmer to perform a series of proximitytests in which the patient or operator are instructed to move the EXD 601 foot further away from the patient each time the programmer emits abeep. After this, control passes back to step 232 so that communicationcan be assessed at the several instructed distances. This occurs untilstep 246 indicates that all the intended distances have been evaluated,which causes the test to stop.

The various parameters of the proximity test protocol which occurregularly at home can be programmably adjusted using the “Set proximityhome-based test parameters/ schedule” 298, which allows the operator toadjust the characteristics of the tests that occur at home.

Some of the steps in figures can occur earlier or later than are shown,steps can also be repeated, and steps may also be omitted altogether.The steps of the particular methods shown here can be incorporated intovariants of other methods which are shown. Various other modifications,adaptations, and alternative designs are of course possible in light ofthe above teachings. Therefore, it should be understood at this timethat, within the scope of the appended claims, the invention can bepracticed otherwise than as specifically described herein.

We claim:
 1. A medical device system for monitoring a condition of apatient that has an implanted medical device, the system comprising: anexternal device comprising a transceiver, a random access memory, and aprocessor coupled to the transceiver and the random access memory,wherein the processor is configured to: periodically activate thewireless communication circuitry in an attempt to receive a plurality ofproximity test signals from the implanted medical device; for each ofthe plurality of activations, determine whether a proximity signal hasbeen received from the implanted device within a certain time after theactivation, thereby generating a plurality of proximity test receiptresults; apply a test to the plurality of proximity test receipt resultsto determine whether a proximity failure condition exists; operativewhen a proximity failure condition exists, take at least one of thefollowing actions: store information regarding the proximity failure inthe random access memory or send a proximity test failure conditionnotification.
 2. The medical device system according to claim 1 whereinthe processor is further configured to send notification to the patientif the proximity failures in the random access memory meet a selectedfirst proximity test criterion.
 3. The medical device system accordingto claim 1 wherein the processor is further configured to sendnotification to a remote station if the proximity failures in the randomaccess memory meet a selected second proximity test criterion.
 4. Themedical device system according to claim 1 wherein the periodicactivation occurs every 24 hours.
 5. The system of claim 1 furtherincluding a proximity test module which operates upon the random accessmemory to provide a log of proximity test results including the time ofeach test and a quantitative value related to the strength of thecommunication signal.
 6. The system of claim 1 further including aproximity test module which operates upon the random access memory toprovide a log of proximity test results including the time of each testand a qualitative value related to the quality of the communicationsignal.
 7. The system of claim 1 wherein the implantable medical deviceis configured to provide a proximity test in conjunction with theexternal device and to derive and store proximity test results.
 8. Thesystem of claim 7 further including a programmer device configured fordownloading the proximity test results of the implanted device andprocessing these test results to provide a test result profile.
 9. Thesystem of claim 7 further including a programmer device configured fordownloading the proximity test results of the implanted device andpresenting the test results graphically to a user.
 10. The system ofclaim 7 further including a programmer configured for running adiagnostic protocol which causes at least one of the implanted deviceand external device to perform selected proximity tests according to adiagnostic protocol, and to evaluate the proximity test results.
 11. Thesystem of claim 7, further including a programmer configured for runninga diagnostic protocol which causes at least one of the implanted deviceand external device to perform selected proximity tests according to adiagnostic protocol, and to display the proximity test results.
 12. Thesystem of claim 1 further including a programmer device configured fordownloading the proximity test results of the external device andprocessing these test results to provide a test result profile.
 13. Thesystem of claim 1 further including a programmer device configured fordownloading the proximity test results of the implanted device andpresenting the test results graphically to a user.
 14. The system ofclaim 1 further including a programmer configured for running adiagnostic protocol which causes the external device to perform selectedproximity tests according to a diagnostic protocol, and to evaluate theproximity test results.
 15. The system of claim 1 further including aprogrammer configured for running a diagnostic protocol which causes theexternal device to perform selected proximity tests according to adiagnostic protocol, and to display the proximity test results.